home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 November: Tool Chest / Dev.CD Nov 94.toast / Tool Chest / Development Tools & Languages / Macintosh Common Lisp Related / interfaces / PInterface Translator / PInterfaces / Lists.p < prev    next >
Encoding:
Text File  |  1993-09-16  |  4.4 KB  |  152 lines  |  [TEXT/MPS ]

  1. {
  2. Created: Monday, January 7, 1991 at 5:54 AM
  3.     Lists.p
  4.     Pascal Interface to the Macintosh Libraries
  5.  
  6.         Copyright Apple Computer, Inc.    1985-1990
  7.         All rights reserved
  8. }
  9.  
  10.  
  11. {$IFC UNDEFINED UsingIncludes}
  12. {$SETC UsingIncludes := 0}
  13. {$ENDC}
  14.  
  15. {$IFC NOT UsingIncludes}
  16.     UNIT Lists;
  17.     INTERFACE
  18. {$ENDC}
  19.  
  20. {$IFC UNDEFINED UsingLists}
  21. {$SETC UsingLists := 1}
  22.  
  23. {$I+}
  24. {$SETC ListsIncludes := UsingIncludes}
  25. {$SETC UsingIncludes := 1}
  26. {$IFC UNDEFINED UsingTypes}
  27. {$I $$Shell(PInterfaces)Types.p}
  28. {$ENDC}
  29. {$IFC UNDEFINED UsingControls}
  30. {$I $$Shell(PInterfaces)Controls.p}
  31. {$ENDC}
  32. {$IFC UNDEFINED UsingMemory}
  33. {$I $$Shell(PInterfaces)Memory.p}
  34. {$ENDC}
  35. {$SETC UsingIncludes := ListsIncludes}
  36.  
  37. CONST
  38. lDoVAutoscroll = 2;
  39. lDoHAutoscroll = 1;
  40. lOnlyOne = -128;
  41. lExtendDrag = 64;
  42. lNoDisjoint = 32;
  43. lNoExtend = 16;
  44. lNoRect = 8;
  45. lUseSense = 4;
  46. lNoNilHilite = 2;
  47. lInitMsg = 0;
  48. lDrawMsg = 1;
  49. lHiliteMsg = 2;
  50. lCloseMsg = 3;
  51.  
  52. TYPE
  53. Cell = Point;
  54.  
  55. DataPtr = ^DataArray;
  56. DataHandle = ^DataPtr;
  57.  
  58. DataArray = PACKED ARRAY [0..32000] OF CHAR;
  59.  
  60. ListPtr = ^ListRec;
  61. ListHandle = ^ListPtr;
  62. ListRec = RECORD
  63.     rView: Rect;
  64.     port: GrafPtr;
  65.     indent: Point;
  66.     cellSize: Point;
  67.     visible: Rect;
  68.     vScroll: ControlHandle;
  69.     hScroll: ControlHandle;
  70.     selFlags: SignedByte;
  71.     lActive: BOOLEAN;
  72.     lReserved: SignedByte;
  73.     listFlags: SignedByte;
  74.     clikTime: LONGINT;
  75.     clikLoc: Point;
  76.     mouseLoc: Point;
  77.     lClikLoop: ProcPtr;
  78.     lastClick: Cell;
  79.     refCon: LONGINT;
  80.     listDefProc: Handle;
  81.     userHandle: Handle;
  82.     dataBounds: Rect;
  83.     cells: DataHandle;
  84.     maxIndex: INTEGER;
  85.     cellArray: ARRAY [1..1] OF INTEGER;
  86.     END;
  87.  
  88.  
  89. FUNCTION LNew(rView: Rect;dataBounds: Rect;cSize: Point;theProc: INTEGER;
  90.     theWindow: WindowPtr;drawIt: BOOLEAN;hasGrow: BOOLEAN;scrollHoriz: BOOLEAN;
  91.     scrollVert: BOOLEAN): ListHandle;
  92.     INLINE $3F3C,$0044,$A9E7;
  93. PROCEDURE LDispose(lHandle: ListHandle);
  94.     INLINE $3F3C,$0028,$A9E7;
  95. FUNCTION LAddColumn(count: INTEGER;colNum: INTEGER;lHandle: ListHandle): INTEGER;
  96.     INLINE $3F3C,$0004,$A9E7;
  97. FUNCTION LAddRow(count: INTEGER;rowNum: INTEGER;lHandle: ListHandle): INTEGER;
  98.     INLINE $3F3C,$0008,$A9E7;
  99. PROCEDURE LDelColumn(count: INTEGER;colNum: INTEGER;lHandle: ListHandle);
  100.     INLINE $3F3C,$0020,$A9E7;
  101. PROCEDURE LDelRow(count: INTEGER;rowNum: INTEGER;lHandle: ListHandle);
  102.     INLINE $3F3C,$0024,$A9E7;
  103. FUNCTION LGetSelect(next: BOOLEAN;VAR theCell: Cell;lHandle: ListHandle): BOOLEAN;
  104.     INLINE $3F3C,$003C,$A9E7;
  105. FUNCTION LLastClick(lHandle: ListHandle): Cell;
  106.     INLINE $3F3C,$0040,$A9E7;
  107. FUNCTION LNextCell(hNext: BOOLEAN;vNext: BOOLEAN;VAR theCell: Cell;lHandle: ListHandle): BOOLEAN;
  108.     INLINE $3F3C,$0048,$A9E7;
  109. FUNCTION LSearch(dataPtr: Ptr;dataLen: INTEGER;searchProc: ProcPtr;VAR theCell: Cell;
  110.     lHandle: ListHandle): BOOLEAN;
  111.     INLINE $3F3C,$0054,$A9E7;
  112. PROCEDURE LSize(listWidth: INTEGER;listHeight: INTEGER;lHandle: ListHandle);
  113.     INLINE $3F3C,$0060,$A9E7;
  114. PROCEDURE LDoDraw(drawIt: BOOLEAN;lHandle: ListHandle);
  115.     INLINE $3F3C,$002C,$A9E7;
  116. PROCEDURE LScroll(dCols: INTEGER;dRows: INTEGER;lHandle: ListHandle);
  117.     INLINE $3F3C,$0050,$A9E7;
  118. PROCEDURE LAutoScroll(lHandle: ListHandle);
  119.     INLINE $3F3C,$0010,$A9E7;
  120. PROCEDURE LUpdate(theRgn: RgnHandle;lHandle: ListHandle);
  121.     INLINE $3F3C,$0064,$A9E7;
  122. PROCEDURE LActivate(act: BOOLEAN;lHandle: ListHandle);
  123.     INLINE $4267,$A9E7;
  124. PROCEDURE LCellSize(cSize: Point;lHandle: ListHandle);
  125.     INLINE $3F3C,$0014,$A9E7;
  126. FUNCTION LClick(pt: Point;modifiers: INTEGER;lHandle: ListHandle): BOOLEAN;
  127.     INLINE $3F3C,$0018,$A9E7;
  128. PROCEDURE LAddToCell(dataPtr: Ptr;dataLen: INTEGER;theCell: Cell;lHandle: ListHandle);
  129.     INLINE $3F3C,$000C,$A9E7;
  130. PROCEDURE LClrCell(theCell: Cell;lHandle: ListHandle);
  131.     INLINE $3F3C,$001C,$A9E7;
  132. PROCEDURE LGetCell(dataPtr: Ptr;VAR dataLen: INTEGER;theCell: Cell;lHandle: ListHandle);
  133.     INLINE $3F3C,$0038,$A9E7;
  134. PROCEDURE LFind(VAR offset: INTEGER;VAR len: INTEGER;theCell: Cell;lHandle: ListHandle);
  135.     INLINE $3F3C,$0034,$A9E7;
  136. PROCEDURE LRect(VAR cellRect: Rect;theCell: Cell;lHandle: ListHandle);
  137.     INLINE $3F3C,$004C,$A9E7;
  138. PROCEDURE LSetCell(dataPtr: Ptr;dataLen: INTEGER;theCell: Cell;lHandle: ListHandle);
  139.     INLINE $3F3C,$0058,$A9E7;
  140. PROCEDURE LSetSelect(setIt: BOOLEAN;theCell: Cell;lHandle: ListHandle);
  141.     INLINE $3F3C,$005C,$A9E7;
  142. PROCEDURE LDraw(theCell: Cell;lHandle: ListHandle);
  143.     INLINE $3F3C,$0030,$A9E7;
  144.  
  145.  
  146. {$ENDC}    { UsingLists }
  147.  
  148. {$IFC NOT UsingIncludes}
  149.     END.
  150. {$ENDC}
  151.  
  152.